home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Celestin Apprentice 5
/
Apprentice-Release5.iso
/
Source Code
/
C
/
Frameworks
/
TransSkel 3.24
/
Source
/
TSHistory
< prev
Wrap
Text File
|
1996-01-17
|
28KB
|
541 lines
TSHistory - history of modifications to TransSkel
06/13/86 Beta version. (pd)
08/27/86 Version number changed to 1.01.
- v1.0 DoGrow bug fixed - the port at the point of the
InvalRect could have been anything; the fix is to set
the port to the grown window first. This also explains
why the kludge to DoActivate in v1.0 worked. (pd)
10/02/86 Version number changed to 1.02, as a result of adding
modifications by David W. Berry (well!dwb@lll-lcc.arpa)
for supporting window zooming. Also used his modifications
for supporting modeless dialogs (though not in the same
form). Dialog support can be #define'd on or off. (pd)
12/28/86 Version number changed to 1.03. Modified to work under
LightspeedC v. 2.01 - took out definitions for window zooming
stuff, as it is now supported by the compiler directly. Also
declared DoZoom static, fixing an oversight. (pd)
01/18/86 Put a SetPort into DoZoom - ZoomWindow requires port to be
set to window being zoomed. (pd)
02/05/86 Version number changed to 1.04. Big change: port setting
behavior made explicit - the only persistant switch occurs
when a window comes active. This changes underlying
programming model (see manual for detailed discussion).
Thanks to Duane Williams for pointing out that this should
be done.
- Typedef'd integer/long variables to Integer, Longint to
facilitate coversion to other C compilers. More complete
type-casting done. LightspeedC does a lot of it automatically,
other compilers may not. (pd - this version never released)
03/02/87 Fixed bug whereby clicks in drag region of non-active windows
may not bring window to front. Seems to be due to DragWindow
calling StillDown to see if mouse is still down. If the machine
was busy otherwise when click occurred and mouse already up when
DragWindow is called, the click ends up being ignored. Thanks to
Roger Humphrey for finding this one.
*** Changes implemented first by omh to Pascal Version
4/18/87 Changed Desk Accessory code so it's more tolerant of memory
conditions for desk accessories. (omh)
7/12/87 Added "cache" code to GetWDHandler. Now TransSkel figures that
an event is most likely to occur for the same window as the
previous event. Thus the WindowPtr and WDHandle for events
are cached and examined to avoid searching through the handler
list. (omh)
7/12/87 Excised the notorious "SetPort" excess. As pointed out by
Duane Williams, SetPort traps abounded unnecessarily in
version 1.02. These have been eliminated now with two
exceptions. First, the port is set when a window handler
is installed. The justification for this is that when a
handler is installed, it is likely that further processing
will be done on it immediately. The application gets control
immediately after the handler is installed anyway, so this
behavior can be manually overridden where necessary. Second,
when a window is activated, the port is set to it. This
follows the model of keeping the port in sync with the active
window. (omh)
7/14/87 Added grow zone function installation and MoreMasters to SkelInit,
which now requires two parameters. The first indicates the number
of times to call MoreMasters. The second is a ProcPtr indicating
a user-supplied grow zone function to be called when memory problems
occur. If nil, no grow zone function is installed. (omh)
7/14/87 SkelMenu, SkelWindow, and SkelDialog now return zero or non-zero
to indicate failure or success of handler allocation. This could
break *all* previous TransSkel applications (as will the change to
SkelInit, above. Please see the section "How to adapt old
TransSkel to New" in the manual for detailed specifications on
how to convert your old programs. TransSkel becomes more memory
conscious with these changes. The functions SkelMenu, SkelWindow,
and SkelDialog are the only routines which actually allocate
memory. Since they may be called at any time, knowing that you
have enough memory becomes important. Thus, these routines return
a value to indicate what happened. If they return zero, then
memory allocation failed. (omh)
10/21/87 Added another parameter to SkelMenu: drawBar:Boolean. This tells
SkelMenu whether to draw the menu bar after adding the Menu. This
is done to eliminate the menus popping up one at a time. Simply
call SkelMenu with drawBar false until the last time you call
SkelMenu, then call it (for the last menu) with drawBar true.(omh)
10/26/87 Removed declarations for zoom-in and zoom-out. Added Pascal changes (above)
to C version. (omh)
02/02/88 Merged pd's 1.04 changes with those of omh, above, to create
release version 2.0. Fixed bug whereby cmd-key equivalents
for menu selections would execute twice if DA window in front.
Thanks to Don Fredkin and Julian Vrieslander for finding this
one. (pd)
12/07/88 Owen releases Pascal version 2.0, shaming Paul into finally
working on getting the last changes on the C version done.
The world rejoices :-)
02/02/89 v2.01. Turned out the cmd-key bug fix wasn't, quite. One
year later, the bug is finally (I hope) fixed. (pd)
Additional changes for 3.00 (much of this based on Bob Schumaker's work):
13 Dec 90 Release 3.01
- Finally fixed misspelling of "Capitol" in my own address!
- Added hook to be called when mouse goes down in menu bar. Allows
applications to update their menus then instead of every time something
is changed in application that causes menu item changes.
14 Dec 90
- Changed SkelEventMask(), SkelBackground(), etc. to SkelSetEventMask(),
SkelSetBackground(), for symmetry with SkelGetXXX() routines. Cosmetic.
- Started changing routines that don't return any value to be of type void.
- Changed gzProc arg to SkelInit to Size (*gzProc)().
- Started changing routines that return 1/0 to be Boolean.
- Started adding prototypes. This means there is now a "TransSkel.h"
that must be #include'd in application source files for public
routines. Private routine prototypes are internal to TransSkel.c.
- DoMenuCommand() now takes modifier keys and passes them to menu handler
routines, so can tell things like option-command-X, etc. This includes
the Apple menu handler for the About item, so that the About proc takes
one argument, the modifiers. Now you, too, can do all kinds of weird
stuff by holding down modifiers and selecting About..., like ResEdit
does.
- Started taking out "register" stuff. This was originally put in to
save a few bytes, but it actually makes code harder to understand,
decreasing pedagogical value (assuming there is any).
21 Dec 90
- Took out most Macintosh header file #includes. <MacHeaders> is assumed
to be turned on so that they're not necessary.
27 Dec 90
- Changed menu handler routines back to not pass the modifier keys. After
further thought it seems this was a bad idea: (i) the idea of passing
modifiers around can be extended indefinitely to all kinds of events,
leading to lots of function calling changes; (ii) in most cases the
modifiers are not of interest anyway. Hence, a different approach is
adopted: a routine SkelGetModifiers() can be called (from anywhere, but
typically from within within handler routines) to retrieve the modifiers
of the current event. This extends the capability of getting the
modifiers to all event handlers without changing the calling sequences.
Handlers that have always been passed modifiers still get them (this
includes window handler mouse and key click routines).
- Added some typedefs for handles to window and menu handlers to be able
to type in variable declarations without all the **'s everywhere
(laziness).
03 Jan 91
- MoreMasters() call in SkelInit() now follows calls to MaxApplZone()
and the other manager initializations.
- mBarHeight initialized in SkelInit() using Script Manager routine
GetMBarHeight() if not running 64K ROM.
- Added parameter to SkelMenu() to indicate whether or not the menu is
a submenu. This allows hierarchical menus to be handled.
- Added parameter to window key-click handler for passing key code.
This is used to indicate key-ups events -- the high bit (bit 7) is
set.
04 Jan 91
- Began to add MultiFinder support.
- Add flag to menu handler struct indicating whether menu is submenu
or not. SkelRmveMenu() doesn't redraw menu bar if not (what for?).
- Added global variable mhDrawBarOnRmve for telling SkelRmveMenu()
never to redraw menu bar. SkelClobber() sets false to avoid menu
bar flicker when all menus are removed.
- Changed default value of eventMask to everyEvent^keyUp from
everyEvent in anticipation of allowing key-up processing.
- Save system event mask in SkelInit() and restore in SkelClobber()
to protect Finder (TN 202).
07 Jan 91
- TN TB 29, p.1, PGMF 2-3 say "you...should not call GetWMgrPort() under
any circumstances." SkelInit() was doing that to get screen bounds
for window dragging and sizing, so now screenbits.bounds is
used instead (which is equivalent). Even that isn't quite correct,
since it provides no support for multiple monitors. (Fixed below)
08 Jan 91
- Ahem. See 04 Jan 91. Changed default value of eventMask to
everyEvent^keyUpMask instead of everyEvent^keyUp. No wonder
mouse-ups were getting eaten! (keyUp == mUpMask).
09 Jan 91
- TriggerUpdate(), DoGrow() and DoZoom() now pass window handler
only, instead of handler and window. The window can be derived
from the handler anyway. One subtle difference is that grows
and zooms for windows without TransSkel handlers won't do
anything, but that situation is unlikely to occur.
- DoZoom() now tries to handle multiple monitors, zooming window
onto screen containing most of window. Zoom behavior will be
application-modifiable soon, so the code that finds the correct
device is packaged into a public routine SkelGetWindowDevice()
in order that applications be able to use it. This routine
returns the device containing most of the window and the maximum
rectangle to which the window can be zoomed, taking into account
the menu bar and window title bar.
- DoZoom() now erases the zoomed window before zooming it. Looks
better (IM IV-50, TN TB 30, p.4).
- Added use of WaitNextEvent() if it's implemented.
10 Jan 91
- SkelMain(), SkelClobber(), SkelRmveWindow() and SkelRmveMenu()
no longer have global knowledge of what doneFlag, mhDrawBarOnRmve,
whClobOnRmve and mhClobOnRmve, respectively, should be reset to
after they change them. Instead, they save the current value,
change it, then restore it to the saved value. This has no
practical effect now, but it might prevent bugs during future
development.
- Window dragging and sizing is now multiple-monitor aware. Uses
bounding box of desktop (GrayRgn), per IM V-121, TN TB 30, p.2.
- Decided that saving/restoring system event mask wasn't worth it,
and removed code that did it.
12 Jan 91
- Yet more renaming. SkelMain() is non-descriptive. It's now
SkelEventLoop(). SkelWhoa() is now SkelStopEventLoop(). Since
I anticiplate that SkelClobber() may one day do more than clobber,
e.g., do other general cleanup, it's now SkelCleanup().
- The event-routing routine DoEvent() is now named SkelRouteEvent()
and is public. There are places where the application might wish
to have a specific event that it obtains itself be processed by
TransSkel.
13 Jan 91
- SkelApple() processing changes: the application can now pass an
"About" string that actually contains more than one item, for
instance, "\pAbout...;Help/H". This can be useful for applications
that want another non-desk accessory item in the Apple menu. The
handler function is passed the item number if a non-DA is selected
from the menu (it formerly took no arguments). This change makes
the function isomorphic to the argument structure of other menu
handlers. RESTRICTION: the item string can't contain a "-" item.
14 Jan 91
- Split the SkelApple() stuff out into a separate file. Presumably
most routines use it, but if they don't, the code won't be linked
in.
21 Jan 91
- SkelQuery() implemented to allow TransSkel to be interrogated
about some aspects of the execution environment.
22 Jan 91
- SkelSetZoom() and SkelGetZoom() allow zoom procedures to be set to
override the default.
- Changed SkelSetGrowBounds() to use GetWDHandler() rather than
GetWHandler(). Shouldn't hurt, and might help in the long run if
growable dialog windows are invented in the future.
25 Jan 91
- DoActivate() was setting port on activates, to implement the
change-port-to-active-window port-setting model. It was also
setting it on deactivates, to make sure it was set properly during
execution of activate handler. Now it saves *and restores* the port
on deactivates in the case that the deactivate is due to a
dialog coming in front: typically the port is set to the dialog and
it's processed with ModalDialog(). With the advent of SkelDlogFilter(),
the deactivate of underlying window can now be processed easily, and
that means the deactivate should leave the port where it was (i.e., the
dialog!).
26 Jan 91
- SkelGetWindowDevice() doesn't take window title height into account
anymore, it simply returns the usable area on the device containing
most of the window. It turns out that for invisible windows the
structure region is empty, so trying to take title bar height into
account for prepositioning invisible windows is impossible. The
caller must try to do that itself, perhaps by relying on prior
(i.e., hardcoded, ugh) knowledge of window characteristics. In
TransSkel itself, this affects DoZoom(), which has to modify the
rect returned from SkelGetWindowDevice(). This is easy, though, because
the window is known to be visible and the structure region is valid.
28 Jan 91 Release 3.02
- Filter demo placed on ftp.primate.wisc.edu for FTP, so change
version number of development version.
29 Jan 91
- Added #define for skelAppleMenuID (value 1) to TransSkel.h so
applications can know the apple menu's ID without knowing a magic
number.
- SkelGetXXX() functions now return a value rather than stuffing the
value into a pointer argument. No doubt some will think this a
gratuitous change.
- Changed Longint in Compiler.h to LongInt. More gratuitousness.
17 Feb 91
- Started adding stuff to implement window property lists.
18 Feb 91
- Make window zooms clip to upper size bounds defined in grow
rectangle.
12 Jun 92
- Lots of changes to TransSkel.h. Made all function names #defines instead
that evaluate to the real function name; effect is that TransSkel.h MUST be
included in source files that call TS routines. Added bunches of function
pointer typedefs.
- SkelDlogFilter() now takes boolean argument so caller can indicate whether
return/enter key processing should be done by standard filter.
17 Jun 92
- SkelGetZoom() returns function pointer as return value rather than in
an argument.
20 Feb 93
- Check FrontWindow() != nil in DoDialog() as per bug in IsDialogEvent()
(it fails if there's no front window (MMWZ says so, anyway)).
05 Jun 93 Release 3.03
- Conversion for THINK C 6.0.
07 Jun 93
- Changed SkelAddWindProp() to fail if the property already exists. Before
it just replaced the data, which could be dangerous if the data was a handle.
03 Jul 93
- Changed SkelWindow() to transfer existing window properties if the handler
for the window exists already. Previously properties were destroyed. Also
use new routine DetachWDHandler() in SkelWindow() and SkelRmveWindow(),
which obviates need for whClobOnRmve.
- Changed the window property routines to call GetWDHandler() instead of
GetWHandler(), since dialog windows might have properties, too.
- SkelDialog() intalls a skelWPropModeless property to the window after
installing the window's handler.
08 Oct 93 Release 3.04
- Changed the argument list to SkelInit(). See TPN #5 for details.
16 Oct 93
- Moved handling of idle task from SkelEventLoop() to SkelRouteEvent(),
in the nullEvent code.
19 Oct 93
- Added SkelSetWaitTimes(), SkelGetWaitTimes() to set/get wait times used by
WaitNextEvent().
21 Oct 93
- Changed Boolean SkelQuery (Integer selector, LongInt *response)
to LongInt SkelQuery (Integer selector). Now you can just test the
return value as the query result.
30 Oct 93
- Added SkelTrapAvailable() for checking whether a given trap is
implemented.
- Added SkelQuery() query types skelQHasGestalt and skelQHasAppleEvents
that indicate whether Gestalt() is available and whether Apple Events
are available.
01 Nov 93
- SkelCleanup() now hides all windows back-to-front before removing
handlers, and closes any open DA's.
- Added SkelQuery selector type skelQSysVersion for obtaining the
system software version.
08 Nov 93
- Look at 'SIZE' resource -1 to see whether the application wants to
receive mouse clicks that bring it to the foreground. (If a click occurs
in a non-frontmost window, the click is used to select the window, but
then must be duplicated as a content-area click.)
11 Nov 93
- Renamed the idle-time procedures SkelSetBackground() and
SkelGetBackground() to SkelSetIdle() and SkelGetIdle() since "background"
has a meaning other than "idle" in a multitasking environment. Also
renamed SkelBackgroundProcPtr type to SkelIdleProcPtr.
13 Nov 93
- SkelGetZoom() was declared as SkelWindZoomProcPtr *, not as
SkelWindZoomProcPtr. Fixed.
14 Nov 93
- Save and restore port in SkelGetWindowDevice() in case window is
not the active window (e.g., if invisible).
18 Nov 93
- Made DoZoom() save and restore the port since it's not known that
the port is set to the zoomed window if zooming is initiated by the
application (as opposed to the user clicking in the zoom box of the
active window).
- Added SkelActivate() so that application programs can tell TransSkel
to call a window's activate procedure. This is useful when you don't
know a window's activate procedure in your application code. It's also
called during disk-insert processing before bringing up the
disk-initialization dialog to deactivate the front window.
- Added SkelClose() so that application programs can tell TransSkel to
call a window's close procedure. This is useful when you don't know a
window's close procedure in your application code. It also knows how to
close DA's.
24 Nov 93
- No way to specify that window idle procedures should execute differently
when application is in foreground or background. The current mechanism
of determining whether to run the proc depending on whether it runs only
when the window is frontmost or not makes less sense in a multitasking
environment. If a proc runs only when the window's frontmost, but the
application is suspended, should it run? Maybe not. In lieu of a good
scheme for deciding without a bunch of complexity in TransSkel, I judge
it best to skip all window idle procs if the application is suspended.
06 Dec 93 Release 3.05
- SkelClose() provides a way for the application to close any window. DoClose()
has assumed the port will be set correctly, but SkelClose() invalidates that
assumption. So now the port is saved before and restored afterward.
07 Dec 93
- Split out SkelGetWindowDevice() into its own file.
- Added SkelGetWindTitleHeight(), which determines height of window title bar
regardless of script system. Used it in DoZoom(), which should now work
properly internationally.
08 Dec 93
- Renamed SkelGetSuspend(), SkelSetSuspend(), SkelSuspendProcPtr to
SkelGetSuspendResume(), SkelSetSuspendResume(), SkelSuspendResumeProcPtr.
22 Dec 93 Release 3.06
- New convenience function SkelGetRectDevice() added. It's similar to
SkelGetWindDevice().
23 Dec 93
- Added skelQQDVersion selector for SkelQuery() that returns QuickDraw
version number.
31 Dec 93
- SkelGetWindowDevice() now computes screen overlap *including* menu bar,
since even though the menu bar obscures a window, that is part of the overlap.
Returned value for usable area on device still doesn't include menu bar.
- Added several files to the "convenience" portion of TransSkel containing
routines to perform some common control and dialog item operations.
02 Jan 94
Junked the use of “#define function function_” definitions in TransSkel.h to
force link errors if TransSkel.h isn’t included in a source file that calls
TransSkel functions. That discipline can be enforced in your application
simply by turning on the Require Prototypes option in the project.
03 Jan 94
- Added auxiliary functions SkelDlogDefaultItem() and SkelDlogCancelItem() for
specifying which dialog items are the default and cancel items. These are used
in conjunction with SkelDlogFilter().
04 Jan 94
- Added function SkelDlogFilterYD() for installing filters that can be used
with the System 7 Standard File dialogs.
- Changed type of SkelDlogFilter() from SkelDlogFilterProcPtr to
ModalFilterProcPtr.
- Undid Integer/LongInt type stuff back to short/long. Nobody else in the world
uses Integer/LongInt and it just adds another header file requirement. Goodbye
Compiler.h.
07 Jan 94 Release 3.07.
- SkelDlogFilter()/SkelDlogFilterYD() no longer check autoKey.
13 Jan 94
- Fixed bug in SkelDlogFilter() handling of return/enter when default button
inactive and edittext item present.
15 Jan 94
- New convenience routines SkelToggleCtlValue() and SkelToggleDlogCtlValue().
17 Jan 94
- Fixed SkelRouteEvent() bug. pIdle was being called on occurrance of null
events. However, if the front window was a dialog, DoDialog() handled null
events first and so pIdle never saw them. Changed by calling pIdle before
DoDialog().
- New convenience routines SkelAlert(), SkelSetAlertPosRatios() and
SkelGetAlertPosRatios().
28 Jan 94 Release 3.08
- New convenience function SkelSetDlogType().
- New core function SkelGetCurrentEvent(), which returns a pointer to the last
event seen by SkelRouteEvent().
- Eliminated ghastly explanation about DA's and pseudo null events from
SkelEventLoop() code. Check Snippets/3.07-SkelEventLoop if you want to see
what it was all about.
- Eliminated some superfluous prototypes.
31 Jan 94 Release 3.09
- Added new core routines SkelGetWindContentRect() and SkelGetStructureRect(),
for returning a window’s content and structure rectangles. These are to a
large degree what the guts of SkelGetWindTitleHeight() was, so that function
was rewritten in terms of them.
01 Feb 94
- Rewrote SkelGetRectDevice() to be more general, made it a core instead of
a convenience routine, rewrote SkelGetWindowDevice() in terms of it. This
eliminates the former redundancy between the two routines. SkelGetRectDevice()
now has two more arguments, though, so it's incompatible with pre-3.09 releases.
- Fixed bug in SkelGetRectDevice() -- was testing for appropriate devices
using "if(!condition && !condition)" instead of "if(!condition || !condition)."
- Offset window userState rectangle when window is dragged in SkelRouteEvent().
Otherwise it's hard to save window positions accurately.
- Added new convenience routine SkelPause() for pausing process execution.
02 Feb 94
- Added new SkelQuery() selector skelQGrayRgn which returns a copy of the
desktop region.
*
* 06 Feb 94 Release 3.10
* - Modified entire library source so that it can be compiled with either
* C-compatible or Pascal-compatible bindings. This allows a binary library
* to be compiled that can be linked into THINK Pascal applications while
* preserving compatibility with existing TransSkel C applications. This
* modification was suggested by Lionel Cons, who also contributed a working
* prototype and the major portion of the Pascal header file.
* - Fixed cast bug in SkelEventLoop().
* 07 Feb 94
* - SkelApple() now takes an empty string or nil to indicate no application item,
* rather than nil only.
* 08 Feb 94
* - SkelPositionWindow() positions windows using the structure rectangle rather
* than the content rectangle now. Give better positioning.
*
* 17 Feb 94 Release 3.11
* - New function SkelTestRectVisible() to check whether or not a
* rectangle is completely contained within the desktop region.
* - SkelAlert() uses SkelTestRectVisible() to check whether an alert will be
* entirely visible when it's supposed to be positioned on the parent window.
* If not, it's positioned on the parent device instead.
* - When position type is skelPositionOnParentWind, SkelGetReferenceRect() now
* returns the structure rectangle rather than the content rectangle.
* - SkelPositionWindow() now accounts for difference between width of structure
* and content rectangle of window to be positioned.
* 20 Feb 94
* - Pascal bindings for the interface functions are now standard. C bindings
* are no longer used.
*
* 14 Apr 94 Release 3.12
* - Added SkelDlogTracksCursor() function.
*
* 22 Apr 94 Release 3.13
* - New function SkelGetWindPropData(). Note caveat in comment preceding
* function definition.
* 23 Apr 94
* - Started adding support for movable modal dialogs.
* - Added variable hasGetWVariant used to tell if GetWVariant() exists
* for determining whether a dialog is a movable modal or not.
* - Standard dialog filter passes command-clicks in drag region of underlying
* windows to TransSkel's event router.
* 25 Apr 94
* - Command-period isn't passed to menu routines any more. Instead the key
* handler is called. The key handler can notice the Cancel and respond
* accordingly if it wants to.
* - All dialog events for modeless and movable modeless dialog are now handled
* in SkelRouteEvent(). (Null events, mouse and key clicks, updates, activates.)
* - Since dialog support is now integrated into the main event routing, the
* old DoDialog() function obsolete.
* - The supportDialogs #define is also obsolete.
* - The dialog event mask is also obsolete, so SkelSetDlogMask() and
* SkelGetDlogMask() are obsolete, too, and have been dropped.
* - Command-clicks in drag region of underlying windows while movable modal
* dialog is frontmost are processed.
* 26 Apr 94
* - New routines SkelIsDlog() and SkelIsMMDlog() for determining whether a
* window is a dialog or movable modal dialog, respectively.
* - Movable modal dialogs can now be registered with SkelDialog(). The property
* added by the routine is now skelWPropModeless or skelWPropMovableModal depending
* on the type of dialog window.
* - Renamed SkelRouteEvent() to RouteEvent(). SkelRouteEvent() is now a call
* to RouteEvent() plus the stuff that used to be in SkelEventLoop() for polling
* window-specific idle-time procedures. The effect is that idle procedures that
* are supposed to run even for windows that are not frontmost no longer freeze
* when a modal dialog came up (if you use SkelDlogFilter()).
* 27 Apr 94
* - Dropped the distinctions between GetWDHandler(), GetDHandler(), and
* GetWHandler(). With more pervasive dialog support, the instances where it
* really matters whether a dialog or non-dialog window is being handled are
* rare. GetWHandler() now suffices everywhere. Renamed DetachWDHandler() and
* oldWDHandler to DetachWHandler() and oldWHandler for consistency.
* - GetWHandler() now returns faster when the argument is nil.
* - Revised the argument structure of SkelDialog() to allow an event filter
* to be specified.
* - Bug fix: SkelAddWindProp() was passing propData as the propType argument
* to SkelGetWindProp() when checking to see if a property of the given type
* already existed.
* 29 Apr 94
* - New routine SkelDlogMapKeyToButton() for helping to map return, enter,
* escape and command-period to default or cancel button in dialogs.
* - Window-specific idle-time routines now run when application is in background.
* 02 May 94 Release 3.14
* Changed the skelResumeProc member of SkelInitParams structure from type
* ResumeProcPtr to type SkelResumeProcPtr. ResumeProcPtr is disappearing from
* Apple's header files, since you're only supposed to pass nil to InitDialogs()
* under System 7 now. This should help TransSkel compile under THINK C 7.
*
* 03 May 94 Release 3.15
* - Fixed bug in SkelDlogFilter.c/ModalFilterYD() causing machine lockup
* if SkelDlogFilterYD() was used.
*
* 04 May 94 Release 3.16
* - Fixed bug in RouteEvent() causing crashes if application idle-time function
* changed the front window.